home *** CD-ROM | disk | FTP | other *** search
/ FM Towns: Free Software Collection 7 / FM Towns Free Software Collection 7.iso / data / nyan_e2 / nyane2_h.non < prev    next >
Text File  |  1993-11-30  |  8KB  |  344 lines

  1. /*********   発言タイトル一覧の作成  ~途中経過非表示版~  v1.04a用 **********/
  2. var count[4];
  3. var item[92];
  4. %MesDat   tmpdir|{\_TMP.DAT};
  5.  
  6. %setstar{[Flag]
  7.     case(Flag={Yes} && (type={Forum} || type={Patio}) && UnReadL!=0,{Yes},{
  8.         %last @nolmemo(2)-2;
  9.         case(last>UnReadL,
  10.         {Yes}, {linenum:=last-UnReadL+1;
  11.         },{No},{linenum:=2;
  12.         });
  13.         mclear(3);
  14.         mmove(2,1,linenum-1,3);
  15.         madd(3,@getchar(@memo(2,linenum,1),1,8));
  16.         madd(3,{*});
  17.         madd(3,@getchar(@memo(2,linenum,1),10));
  18.         mmove(2,linenum+1,@nolmemo(2),3);
  19.         mclear(2);
  20.         mcopy(3,2);
  21.         mclear(3);
  22.     });
  23.     mwrite(MesDat,2);
  24. };
  25.  
  26. %date{[DATE]
  27.     %Y    @getchar(DATE, 1,2);
  28.     %M    @getchar(DATE, 4,2);
  29.     %D    @getchar(DATE, 7,2);
  30.     %HH    @getchar(DATE,10,2);
  31.     %MM    @getchar(DATE,13,2);
  32.     case(@im(M|D)+0==0,
  33.     {Yes}, {im({0000000000});
  34.     },{No},{im(Y|M|D|HH|MM);
  35.     });
  36. };
  37.  
  38. %setline {
  39.     case(type,
  40.     {BUL},{
  41.         var OLDdate[10];
  42.         var CURdate[10];
  43.         loop({
  44.             %wkln1    @fread(19,{/});
  45.             case(@getchar(wkln1,10,5)*@getchar(wkln1,20,2)>0,
  46.             {Yes},{
  47.                 CURdate:=@date({00/}|@getchar(wkln1,17,5)|{ 00:00});
  48.                     case(OLDdate <= CURdate,
  49.                     {Yes},{
  50.                 item:=@ftell|{ }|@getchar(wkln1,7,80);
  51.                 madd(2,item);
  52.                 OLDdate:=CURdate;
  53.                 });
  54.             });
  55.             im(wkln1<>{})
  56.         });
  57.     },{HP},{
  58.         case(First=1 && Count=0,
  59.         {Yes},{
  60.             loop({
  61.             %wkln1 @fread(9,{/});
  62.             case(85<@getchar(wkln1,7,2) && 
  63.                         @getchar(wkln1,18,1)={:},
  64.             {Yes},{
  65.                 case(wkln1<>{},{Yes},{
  66.                 madd(2,    @ftell|{  }|@getchar(wkln1,1,3)|{ }
  67.                     |@getchar(wkln1,7,14)|{         }
  68.                     |@getchar(wkln1,37,50));
  69.                 });
  70.             });
  71.             im(wkln1<>{})
  72.             });
  73.         },{No},{
  74.             loop({
  75.             %wkln1 @fread(9,{/});
  76.             case(@getchar(wkln1,1,3)>=First,
  77.             {Yes},{
  78.                 case(85<@getchar(wkln1,7,2) && 
  79.                         @getchar(wkln1,18,1)={:},
  80.                 {Yes},{
  81.                 count:=count+1;
  82.                 madd(2,@ftell|{  }|@getchar(wkln1,1,3)|{ }
  83.                     |@getchar(wkln1,7,14)|{         }
  84.                     |@getchar(wkln1,37,50));
  85.                 });
  86.             });
  87.             im(wkln1<>{} && (Count > count || Count = 0))
  88.             });
  89.             %wkln1 @fread(9,{/});
  90.         });
  91.     },{Mail},{
  92.         loop({
  93.             %wkln1 @fread(35,{/});
  94.             item:=@ftell;
  95.             %wkln2 @fread;
  96.             case(@getchar(wkln1,41,1)={:} && 
  97.                     @getchar(wkln2,5,4)={題名},{Yes},{
  98.                 item:=item|{ }|@getchar(wkln1,5,17)
  99.                     |@getchar(wkln1,23,8)
  100.                     |@getchar(wkln1,32,6)|{ }
  101.                     |@getchar(wkln2,11,68);
  102.                 madd(2,item);
  103.             });
  104.             im(wkln1<>{})
  105.         });
  106.     },{Prof},{
  107.         loop({
  108.             %wkln1    @fread(78,{-});
  109.             %wkln2    @fread;
  110.             item:=@ftell;
  111.             case(@getchar(wkln1,20,15)={---------------} &&
  112.                  @getchar(wkln2,19,4)={PROF},{Yes},{
  113.                 madd(2,item|{ }|@getchar(wkln2,1,18)|{(}|
  114.                     @getchar(wkln2,24,8)|{)\n});
  115.             });
  116.             im(wkln1<>{})
  117.         });
  118.     });
  119. };
  120. madd(2,{99999999 ★表示したいメッセージを左ダブルクリック}|
  121.         {(又はカーソル移動+PF3)してね★\n});
  122. mclear(3);
  123. linenum:=0;
  124. %MesChk{
  125.     var Line1[500];
  126.     var Line2[500];
  127.     mclear(4);
  128.     MesType:={};
  129.     Line2:=@fread;
  130.     %MesChk2{[n]
  131.         var rc[3];
  132.         case(@getchar(Line1,1,n) * @getchar(Line1,n+2,n) > 0,{Yes},{
  133.             case(    @getchar(Line2, 1,1)={(} &&
  134.                 @getchar(Line2, 4,1)={)} &&
  135.                 @getchar(Line2,10,1)={/} &&
  136.                 @getchar(Line2,13,1)={/} &&
  137.                 @getchar(Line2,16,1)={ } &&
  138.                 @getchar(Line2,19,1)={:},
  139.             {Yes},{ 
  140.                 rc:={Yes};
  141.             });
  142.         });
  143.         im(rc);
  144.     };
  145.     loop({
  146.         Line1:=Line2;
  147.         Line2:=@fread;
  148.         case(@getchar(Line1,4,1)={/},
  149.         {Yes},{
  150.             case(@MesChk2(3),{Yes},{MesType:={OLD}});
  151.         },{No},{
  152.             case(@getchar(Line1,6,1)={/},{Yes},{
  153.                 case(@MesChk2(5),{Yes},{MesType:={NEW}});
  154.             });
  155.         });
  156.         im(MesType={} && Line1<>{});
  157.     });
  158.     fclose;
  159.     fopen(fname);
  160. };
  161.  
  162. fopen(fname);
  163. footnote({ ログの取り出しをしています.ちょっと,お待ちを!});
  164. count:=0;
  165. case(type<>{Forum} && type<>{Patio},
  166. {Yes},{
  167.     setline;
  168. },{No},{
  169.     MesChk;
  170.     case(MesType,
  171.     {OLD},{
  172.         case(First=1 && Count=0,
  173.         {Yes},{
  174.             loop({
  175.             %wkln1 @fread(4,{/});
  176.             item:=@ftell;
  177.             %wkln2 @fread;
  178.             case(85<@getchar(wkln2,8,2) && 
  179.                         @getchar(wkln2,19,1)={:},
  180.             {Yes},{
  181.                 case(@getchar(wkln2,27,2),
  182.                 {へ},{
  183.                 madd(2,item|{ 00}|@getchar(wkln1,1,3)|{ 00}
  184.                 |@getchar(wkln2,24,3)
  185.                 |@getchar(wkln1,20,17)
  186.                 |@getchar(wkln1,38,80))
  187.                 },,{
  188.                 case(wkln2<>{},{Yes},{
  189.                     madd(2,item|{ 00}|@getchar(wkln1,1,3)
  190.                     |{      }|@getchar(wkln1,20,17)
  191.                     |@getchar(wkln1,38,80))
  192.                 });
  193.                 });
  194.             });
  195.             im(wkln1<>{})
  196.             });
  197.         },{No},{
  198.             loop({
  199.             %wkln1 @fread(4,{/});
  200.             case(@getchar(wkln1,1,3)>=First,
  201.             {Yes},{
  202.                 item:=@ftell;
  203.                 %wkln2 @fread;
  204.                 case(85<@getchar(wkln2,8,2) && 
  205.                         @getchar(wkln2,19,1)={:},
  206.                 {Yes},{
  207.                 count:=count+1;
  208.                 case(@getchar(wkln2,27,2),
  209.                 {へ},{
  210.                     madd(2,item|{ 00}|@getchar(wkln1,1,3)|{ 00}
  211.                     |@getchar(wkln2,24,3)
  212.                     |@getchar(wkln1,20,17)
  213.                     |@getchar(wkln1,38,80))
  214.                 },,{
  215.                      madd(2,item|{ 00}|@getchar(wkln1,1,3)|
  216.                     {      }|@getchar(wkln1,20,17)
  217.                     |@getchar(wkln1,38,80))
  218.                     });
  219.                 im({No});
  220.                 },{No},{
  221.                     im(wkln1<>{});
  222.                 });
  223.             },{No},{
  224.                 im(wkln1<>{});
  225.             });
  226.             });
  227.             loop({
  228.                 %wkln1 @fread(4,{/});
  229.                 item:=@ftell;
  230.                 %wkln2 @fread;
  231.                 case(85<@getchar(wkln2,8,2) && 
  232.                         @getchar(wkln2,19,1)={:},
  233.                 {Yes},{
  234.                 count:=count+1;
  235.                 case(@getchar(wkln2,27,2),
  236.                 {へ},{
  237.                     madd(2,item|{ 00}|@getchar(wkln1,1,3)|{ 00}
  238.                     |@getchar(wkln2,24,3)
  239.                     |@getchar(wkln1,20,17)
  240.                     |@getchar(wkln1,38,80))
  241.                 },,{
  242.                      madd(2,item|{ 00}|@getchar(wkln1,1,3)|
  243.                     {      }|@getchar(wkln1,20,17)
  244.                     |@getchar(wkln1,38,80))
  245.                     });
  246.                 });
  247.                 im(wkln1<>{} && (Count>count || Count=0))
  248.             });
  249.             %wkln1 @fread(4,{/});
  250.         });
  251.         },{NEW},{
  252.         case(First=1 && Count=0,
  253.         {Yes},{
  254.             loop({
  255.             %wkln1 @fread(6,{/});
  256.             item:=@ftell;
  257.             %wkln2 @fread;
  258.             case(85<@getchar(wkln2,8,2) && 
  259.                         @getchar(wkln2,19,1)={:},
  260.             {Yes},{
  261.                 case(@getchar(wkln2,29,2),
  262.                 {へ},{
  263.                 madd(2,item|{ }|@getchar(wkln1,1,5)|{ }
  264.                     |@getchar(wkln2,24,5)
  265.                     |@getchar(wkln1,22,17)
  266.                     |@getchar(wkln1,39,80))
  267.                 },,{
  268.                 case(wkln2<>{},{Yes},{
  269.                     madd(2,item|{ }|@getchar(wkln1,1,5)
  270.                     |{      }|@getchar(wkln1,22,17)
  271.                     |@getchar(wkln1,39,80))
  272.                 });
  273.                 });
  274.             });
  275.             im(wkln1<>{})
  276.             });
  277.         },{No},{
  278.             loop({
  279.             %wkln1 @fread(6,{/});
  280.             case(@getchar(wkln1,1,5)>=First,
  281.             {Yes},{
  282.                 item:=@ftell;
  283.                 %wkln2 @fread;
  284.                 case(85<@getchar(wkln2,8,2) && 
  285.                         @getchar(wkln2,19,1)={:},
  286.                 {Yes},{
  287.                 count:=count+1;
  288.                 case(@getchar(wkln2,29,2),
  289.                 {へ},{
  290.                     madd(2,item|{ }|@getchar(wkln1,1,5)|{ }
  291.                     |@getchar(wkln2,24,5)
  292.                     |@getchar(wkln1,22,17)
  293.                     |@getchar(wkln1,39,80))
  294.                 },,{
  295.                     madd(2,item|{ }|@getchar(wkln1,1,5)
  296.                     |{      }|@getchar(wkln1,22,17)
  297.                     |@getchar(wkln1,39,80))
  298.                 });
  299.                 im({No});
  300.                 },{No},{
  301.                 im(wkln1<>{});
  302.                 });
  303.             },{No},{
  304.                 im(wkln1<>{});
  305.             });
  306.             });
  307.             loop({
  308.                 %wkln1 @fread(6,{/});
  309.                 item:=@ftell;
  310.                 %wkln2 @fread;
  311.                 case(85<@getchar(wkln2,8,2) && 
  312.                         @getchar(wkln2,19,1)={:},
  313.                 {Yes},{
  314.                 count:=count+1;
  315.                 case(@getchar(wkln2,29,2),
  316.                 {へ},{
  317.                     madd(2,item|{ }|@getchar(wkln1,1,5)|{ }
  318.                     |@getchar(wkln2,24,5)
  319.                     |@getchar(wkln1,22,17)
  320.                     |@getchar(wkln1,39,80))
  321.                 },,{
  322.                     madd(2,item|{ }|@getchar(wkln1,1,5)
  323.                     |{      }|@getchar(wkln1,22,17)
  324.                     |@getchar(wkln1,39,80))
  325.                 });
  326.                 });
  327.                 im(wkln1<>{} && (Count>count || Count=0))
  328.             });
  329.             %wkln1 @fread(6,{/});
  330.         });
  331.     });
  332. });
  333. madd(2,@ftell | { -----------------}|
  334.           {------------------\n});
  335. fclose;
  336. setstar({Yes});
  337. %member @body(fname,,{\})|{\MEMBER.TXT};
  338. case( (type={Forum} || type={Mail}) && @filechk(member),
  339.     {Yes}, {mread(member,3); memnum:=@nolmemo(3);
  340.     },{No},{mkdir(logd,@body(fname,{:},{\}));
  341.         madd(3,{});
  342. });
  343. mset(3,{r});
  344.